package com.chenfan.mcn.clients.baseinfo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.chenfan.mcn.model.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author tangwei
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class BaseCustomerBillingVO extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 7920265569018549265L;
    /**
     * 主键id
     */
    @TableId(value = "billing_id", type = IdType.AUTO)
    private Long billingId;

    /**
     * 客户代码
     */
    private String customerCode;

    /**
     * 顺序栏
     */
    private String customerOrder;

    /**
     * 状态（0启用，1禁用）
     */
    private Integer billingStatus;

    /**
     * 开票抬头--即户名 公司抬头
     */
    @Excel(name = "公司名称/户名")
    private String invoiceTitle;

    /**
     * 开票抬头状态
     */
    private String invoiceTitleType;

    /**
     * 开票抬头状态中文
     */
    @TableField(exist = false)
    private String invoiceTitleTypeC;

    /**
     * 纳税人识别号
     */
    @Excel(name = "纳税人识别号")
    private String taxpayerIdentificationNumber;

    /**
     * 公司地址
     */
    @Excel(name = "公司地址")
    private String billingAddress;

    /**
     * 账户手机号
     */
    @Excel(name = "账户手机号")
    private String billingTel;

    /**
     * 账户号
     */
    @Excel(name = "账户号")
    private String billingAccount;

    /**
     * 开户银行
     */
    @Excel(name = "开户行")
    private String billingBank;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String remark;

    /**
     * 删除标识 0：否 1：是
     */
    private Integer isDeleted;
    /**
     * 税率%
     */
    private BigDecimal taxRate;
    /**
     * 客户收款账户表主键id
     */
    private Long accountId;
    /**
     * 开户省
     */
    private String bankProvince;
    /**
     * 开户市
     */
    private String bankCity;
    /**
     * 开户支行
     */
    private String bankNameBranch;
    /**
     * 收款账户身份证号
     */
    private String idNumber;
    /**
     * 账户类型 - - 公司/个人
     */
    private String accountType;

    /**
     * 修改时间
     */
    private Date updateTime;

    /**
     * 创建时间
     */
    private Date createTime;

}
